home *** CD-ROM | disk | FTP | other *** search
/ Hardcore Gamer Resource Kit / Hardcore Gamer Resource Kit - Disc 2.iso / Utils / UNIX / UNZIP520 / AMIGA / SMAKEFIL.E < prev    next >
Text File  |  1996-02-11  |  5KB  |  170 lines

  1. #===========================================================================
  2. # Makefile for UnZip, ZipInfo & fUnZip:  AMIGA SAS/C Version 6.x
  3. # Version:  5.20                                    last revised:  11 Feb 96
  4. #===========================================================================
  5.  
  6. # from John Bush <john.bush@east.sun.com>                
  7.  
  8.  
  9. #####################
  10. # MACRO DEFINITIONS #
  11. #####################
  12.  
  13. # Compiler and loader debug flags.  Uncomment as needed.  Recomment when done.
  14. # CDBG = DEBUG=L DEF=DEBUG
  15. # LDBG = ADDSYM
  16. # LMAP = MAP AMIGA/UNZIP.MAP
  17.  
  18. # Compiler definitions
  19. #
  20. CC = sc
  21. #
  22. OPT = OPT OPTINL OPTINLOCAL OPTTIME OPTCOMP=5 OPTDEP=5 OPTRDEP=5
  23. #
  24. # Choose one DATAOPTS & SASLIB.  NOTE!  only DATA=FAR is known to work!
  25. #
  26. DATAOPTS = DATA=FAR         # link with SCNB.lib
  27. SASLIB = scnb
  28. # DATAOPTS = DATA=FAR SINT  # link with SCSNB.lib  [not working yet!]
  29. # SASLIB = scsnb
  30. # DATAOPTS = DATA=NEAR      # link with SC.lib
  31. # SASLIB = sc
  32. #
  33. CDEFINES = DEF=AMIGA DEF=PROTO
  34. COPTIONS = $(DATAOPTS) NOSTKCHK STRMERGE CPU=ANY CODE=NEAR NMINC UNSCHAR
  35. COPTIONS = $(COPTIONS) ERRORREXX NOERRORCONSOLE NOICONS
  36. #
  37. CFLAGS = $(CDEFINES) $(COPTIONS) $(CDBG) $(OPT)
  38.  
  39. # Linker definitions
  40. #  See SASLIB definition above
  41. #
  42. LD = slink
  43. LDFLAGS =  FROM LIB:c.o
  44. LDFLAGS2 = NOICONS $(LDBG) $(LMAP)
  45. LIBFLAGS = LIB LIB:$(SASLIB).lib+LIB:amiga.lib
  46.  
  47. # UnZip Objects
  48. #
  49. OBJS1 = unzip.o crc32.o crctab.o crypt.o envargs.o explode.o extract.o
  50. OBJS2 = fileio.o globals.o list.o inflate.o match.o process.o ttyio.o
  51. OBJS3 = unreduce.o unshrink.o zipinfo.o
  52. OBJSA = amiga.o
  53. OBJS  = $(OBJS1) $(OBJS2) $(OBJS3) $(OBJSA)
  54. LOBJS = $(OBJS)
  55.  
  56. # UnZipSFX Objects
  57. OBJX1 = unzip_x.o crc32.o crctab.o crypt.o extract_x.o fileio.o globals.o
  58. OBJX2 = inflate.o match.o process_x.o ttyio.o
  59. OBJX  = $(OBJX1) $(OBJX2) amiga_x.o
  60.  
  61. # fUnZip Objects
  62. OBJF = funzip.o crypt_f.o globals_f.o inflate_f.o ttyio_f.o filedate_f.o
  63.  
  64. # Common header files
  65. UNZIP_H = unzip.h unzpriv.h globals.h
  66.  
  67. # Output targets
  68. UNZIPS = unzip unzipsfx funzip
  69.  
  70. # Temp filename for object lists to load using linker "WITH" command.
  71. OBJLIST = ram:OBJLIST.TMP
  72.  
  73. #######################################
  74. # DEFAULT TARGET AND PROCESSING RULES #
  75. #######################################
  76.  
  77. all: $(UNZIPS)
  78.  
  79. .c.o :
  80.         $(CC) $(CFLAGS) OBJNAME=$@ $*.c
  81.  
  82.  
  83. #########################
  84. # Final output targets. #
  85. #########################
  86.  
  87. # NOTE:  When generating MAP files, don't make "all" because only the last 
  88. #        map generated will be the one that remains after this is finished.
  89. #        Or, put specific MAP statements in below for each.  
  90.  
  91. unzip:    $(OBJS)
  92.           echo "$(OBJS)" >$(OBJLIST)
  93.           $(LD) TO UnZip $(LDFLAGS) WITH $(OBJLIST) $(LIBFLAGS) $(LDFLAGS2)
  94.  
  95. unzipsfx: $(OBJX)
  96.           echo "$(OBJX)" >$(OBJLIST)
  97.           $(LD) TO UnZipSFX $(LDFLAGS) WITH $(OBJLIST) $(LIBFLAGS) $(LDFLAGS2)
  98.  
  99. funzip:   $(OBJF)
  100.           echo "$(OBJF)" >$(OBJLIST)
  101.           $(LD) TO fUnZip $(LDFLAGS) WITH $(OBJLIST) $(LIBFLAGS) $(LDFLAGS2)
  102.  
  103. clean:
  104.         -delete >nil: $(OBJS1)
  105.         -delete >nil: $(OBJS2)
  106.         -delete >nil: $(OBJSA)
  107.         -delete >nil: $(OBJF)
  108.  
  109. spotless: clean
  110.         -delete >nil: UnZip UnZipSFX fUnZip
  111.  
  112. # special rule for adding Amiga internal version number to UnZip
  113. #
  114. amiga.o:     amiga/amiga.c amiga/amiga.h
  115.                 rx > env:VersionDate "say '""'translate(date('E'),'.','/')'""'"
  116.                 $(CC) DEF=SFX $(CFLAGS) OBJNAME=amiga.o amiga/amiga.c
  117.  
  118. # special rules for objects used in UnZipSFX and fUnZip
  119. #
  120. unzip_x.o:     unzip.c $(UNZIP_H) version.h consts.h
  121.                 $(CC) DEF=SFX $(CFLAGS) OBJNAME=unzip_x.o unzip.c
  122.  
  123. extract_x.o:   extract.c $(UNZIP_H) crypt.h
  124.                 $(CC) DEF=SFX $(CFLAGS) OBJNAME=extract_x.o extract.c
  125.  
  126. process_x.o:   process.c $(UNZIP_H)
  127.                 $(CC) DEF=SFX $(CFLAGS) OBJNAME=process_x.o process.c
  128.  
  129. amiga_x.o:     amiga/amiga.c amiga/amiga.h
  130.                 $(CC) DEF=SFX $(CFLAGS) OBJNAME=amiga_x.o amiga/amiga.c
  131.  
  132. crypt_f.o:     crypt.c $(UNZIP_H) zip.h crypt.h ttyio.h
  133.                 $(CC) DEF=FUNZIP $(CFLAGS) OBJNAME=crypt_f.o crypt.c
  134.  
  135. globals_f.o:   globals.c $(UNZIP_H)
  136.                 $(CC) DEF=FUNZIP $(CFLAGS) OBJNAME=globals_f.o globals.c
  137.  
  138. inflate_f.o:   inflate.c inflate.h $(UNZIP_H) crypt.h
  139.                 $(CC) DEF=FUNZIP $(CFLAGS) OBJNAME=inflate_f.o inflate.c
  140.  
  141. ttyio_f.o:     ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h
  142.                 $(CC) DEF=FUNZIP $(CFLAGS) OBJNAME=ttyio_f.o ttyio.c
  143.  
  144. # objects common to all revisions/ports:
  145. #
  146. crypt.o:        crypt.c $(UNZIP_H) zip.h crypt.h ttyio.h
  147. envargs.o:      envargs.c $(UNZIP_H)
  148. explode.o:      explode.c $(UNZIP_H)
  149. extract.o:      extract.c $(UNZIP_H) crypt.h
  150. fileio.o:       fileio.c $(UNZIP_H) crypt.h ttyio.h ebcdic.h
  151. funzip.o:       funzip.c $(UNZIP_H) crypt.h ttyio.h tables.h
  152. globals.o:      globals.c $(UNZIP_H)
  153. inflate.o:      inflate.c inflate.h $(UNZIP_H)
  154. match.o:        match.c $(UNZIP_H)
  155. process.o:      process.c $(UNZIP_H)
  156. ttyio.o:        ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h
  157. unreduce.o:     unreduce.c $(UNZIP_H)
  158. unshrink.o:     unshrink.c $(UNZIP_H)
  159. unzip.o:        unzip.c $(UNZIP_H) version.h consts.h
  160. zipinfo.o:      zipinfo.c $(UNZIP_H)
  161.  
  162.  
  163. # objects specific to Amiga
  164. amiga_x.o:      amiga/amiga.c amiga/amiga.h amiga/filedate.c
  165.                 $(CC) DEF=SFX $(CFLAGS) OBJNAME=amiga_x.o amiga/amiga.c
  166.  
  167. filedate_f.o:   amiga/filedate.c
  168.                 $(CC) DEF=FUNZIP $(CFLAGS) OBJNAME=filedate_f.o amiga/filedate.c
  169.